#include <fcntl.h>
#include <unistd.h>
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
#include <sys/stat.h>

int main()
{
	//1. 创建管道文件
	int r = mkfifo("/root/test.pipe",0666);   
	if(-1 == r) 
	{
		printf("创建管道文件失败：%m\n");
		exit(-1);
	}
	printf("创建管道文件%m\n");

	
	//2. 打开管道文件					
	int fd = open("/root/test.pipe",O_WRONLY);
	if(-1 == fd) 
	{
		printf("打开管道文件失败:%m\n");
		unlink("/root/test.pipe");
		exit(-2);
	}
	printf("打开管道文件%m\n");


	//3. 写入数据到管道文件中			
	int n=0;
	char buff[256];
	while(1){
		sprintf(buff,"强哥超帅:%d\n",n++);
		write(fd,buff,strlen(buff));
		sleep(1);
	}		


	//4. 关闭管道						
	close(fd);				


	//5. 删除管道文件  unlink 
	unlink("/root/test.pipe");

	return 0;
}